# /usr/bin/python3

# Author: 爱编程的章老师
# @Time: 2021/1/14 0014
# E-mail: Bluesand2010@163.com


'''pygame中的时间模块'''
import sys

import pygame

def get_ticks():
    time1 = pygame.time.get_ticks()
    pygame.init()
    pygame.display.set_mode((800,600))
    pygame.display.set_caption("时间模块")
    time2 = pygame.time.get_ticks()
    print(time1)
    print(time2)


def demo_get_ticks():
    pygame.init()
    screen = pygame.display.set_mode((800,600))
    pygame.display.set_caption("时间模块")

    font = pygame.font.SysFont("fangsong", 32)

    start_time = pygame.time.get_ticks()

    while 1:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                sys.exit()
        # 获取当前游戏时间
        end_time = pygame.time.get_ticks()
        # 计算游戏时间(即进入循环后的时间).如果要计算其他的时间,可以根据需要设置开始计时的位置
        time = (end_time - start_time)//1000

        # 输出文字内容
        text_surface = font.render("游戏时间:" + str(time), True, "blue")
        screen.fill("black")
        screen.blit(text_surface, (0,0))
        pygame.display.update()
        
def wait():
    pygame.init()
    screen = pygame.display.set_mode((800, 600))
    pygame.display.set_caption("时间模块")

    font = pygame.font.SysFont("fangsong", 32)
    while 1:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                sys.exit()
        # 获取当前游戏时间
        # 计算游戏时间(即进入循环后的时间).如果要计算其他的时间,可以根据需要设置开始计时的位置
        
        dtime = pygame.time.wait(100)

        # 输出文字内容
        text_surface = font.render("休息时间2秒,实际间隔时间:" + str(dtime) + "毫秒", True, "blue")
        screen.fill("black")
        screen.blit(text_surface, (0, 0))
        pygame.display.update()


def delay():
    pygame.init()
    screen = pygame.display.set_mode((800, 600))
    pygame.display.set_caption("时间模块")

    font = pygame.font.SysFont("fangsong", 32)
    while 1:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                sys.exit()
        # 获取当前游戏时间
        # 计算游戏时间(即进入循环后的时间).如果要计算其他的时间,可以根据需要设置开始计时的位置

        dtime = pygame.time.delay(100)

        # 输出文字内容
        text_surface = font.render("休息时间2秒,实际间隔时间:" + str(dtime) + "毫秒", True, "blue")
        screen.fill("black")
        screen.blit(text_surface, (0, 0))
        pygame.display.update()


def clock_tick():
    pygame.init()
    screen = pygame.display.set_mode((800, 600))
    pygame.display.set_caption("时间模块")

    font = pygame.font.SysFont("fangsong", 32)
    clock = pygame.time.Clock()  # 实例化Clock类
    while 1:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                sys.exit()
        # 获取当前游戏时间
        # 计算游戏时间(即进入循环后的时间).如果要计算其他的时间,可以根据需要设置开始计时的位置

        fps = clock.get_fps()  # 获取游戏帧率

        # 输出文字内容
        text_surface = font.render("游戏帧率是:" + str(fps), True, "blue")
        screen.fill("black")
        screen.blit(text_surface, (0, 0))
        pygame.display.update()
        clock.tick(60)
if __name__ == '__main__':
    clock_tick()